INSERT INTO uofg.batches (value, id)
SELECT BatchDescription, BatchID
FROM nubrs.batches;

-------------------------------------------------------------------------
INSERT INTO uofg.colleges (id, name, FacultyNameE)
SELECT FacultyNumber, FacultyNameA, FacultyNameE
FROM nubrs.faculties;

------------------------------------------------------------------------------
INSERT INTO uofg.sections (DepartmentNumber, name, parent, DepartmentNameE) 
SELECT DepartmentNumber, DepartmentNameA, FacultyNumber as parent, DepartmentNameE FROM nubrs.departments;
------------------------------------------------------------------------------
INSERT IGNORE INTO uofg.subjects (subjectcode, section_id, college_id, subjectnamea, subjectnamee, credit_hours, program_id)
SELECT 
    SubjectCode,departmentNumber,facultyNumber,
    SubjectNameA,SubjectNameE,SubjectHour,    ProgramID
FROM nubrs.subjects;
------------------------------------------------------------------------------

-- First, check the current constraint name
SHOW CREATE TABLE uofg.subjects;

-- Drop the unique constraint
ALTER TABLE uofg.subjects DROP INDEX unique_subject_per_program;

-- Now insert all data including duplicates
INSERT INTO uofg.subjects (subjectcode, section_id, college_id, subjectnamea, subjectnamee, credit_hours, program_id)
SELECT 
    SubjectCode,
    departmentNumber,
    facultyNumber,
    SubjectNameA,
    SubjectNameE,
    SubjectHour,
    ProgramID
FROM nubrs.subjects;
------------------------------------------------------------------------------
INSERT INTO uofg.students (student_id, student_name, student_name_eng, batch_id, college_id, section_id, program_id)
SELECT 
    StudentNumber,
    StudentNameA,
    StudentNameE,
    BatchID,
    FacultyNumber,
    DepartmentNumber,
    ProgramID
FROM nubrs.students;
----------------------------student subjects--------------------------------------------------

----------------------------grade points --------------------------------------------------